package gentest;

import java.security.KeyStore;

import com.alibaba.fastjson.JSONObject;
import com.taoyuanx.utils.RSAUtil;

public class GenAuthParam {
	public static void main(String[] args) throws Exception {
		JSONObject obj=new JSONObject();
		/**
		 * open_key 在数据库中配置
		 * random 随机数 建议随机生成,如果需要做更加严格的验证,可以由服务端生成
		 * open_pwd 数据库中配置
		 * 签名算法建议生成证书时指定签名算法 p12 默认 SHA256WITHRSA
		 * 
		 * signStr 可以为随机数也可以为random+open_pwd
		 * 加上密码也是为了增加被破解的难度 
		 */
		String open_key="aa46ab721801405ca69461f51ce05cc0";
		String random="12345678";
		String open_pwd="123456";
		obj.put("open_key", open_key);
		obj.put("random",random);//建议随机生成
		String signStr=random+open_pwd;
		//读取自己的证书
		KeyStore keyStore = RSAUtil.getKeyStore("I://client.p12", "test12");
		obj.put("sign", RSAUtil.signData(signStr.getBytes(), "MD5WITHRSA", RSAUtil.getPrivateKey(keyStore,"test12")));
		System.out.println(obj);
	}
}
